ITサービスマネージャ暗記無料で始める

GROUP BYとHAVINGとは?ぐるーぷばいとはびんぐ

GROUP BYとHAVINGとは、集計のための2つの句。GROUP BYは指定した列の値が同じ行を1つのグループへまとめ、COUNTやSUMをグループごとに計算させる。HAVINGはできあがったグループを絞り込む条件を書く場所で、行そのものを絞るWHEREとは効く段階が違う。

最終更新:2026-10-06

試験情報

ITサービスマネージャ試験の過去問では1回出題されています。

ITサービスマネージャ試験の頻出用語/午前II

別名:GROUP BY、HAVING、GROUP BY句、集計関数、集合関数と集計、GROUP BY・HAVING

この語が出る過去問を解く →

背景

集約の前と後では、条件に使える値が違う。行を1件ずつ見ている段階では合計値がまだ存在せず、合計が出た段階では個々の行が失われている。この二段階のどちらで絞るのかを書き分けられるように、WHEREとは別の句が用意されている。運用では、SLA報告や稼働統計を自分でデータベースから取り出す場面でこの使い分けが効く。

具体例

「月間の障害件数が5件を超えた業務システム」を出すなら、システムコードで GROUP BY し、HAVING COUNT(*) > 5 と書く。対象月の限定は行単位の条件なので WHERE で先に絞ると、集約する行数が減って月次レポートの所要時間も短くなる。

試験での引っ掛け

HAVINGはWHEREの置き換えではない。行単位で絞れる条件までHAVINGに寄せると集約対象が減らず、件数が増えたときに処理時間が伸びる。GROUP BYに挙げていない列を選択列へ書けるかは製品ごとに違うため、運用スクリプトを別の製品へ移すときは必ず確認する。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では1回出題
  • 分野:午前II
  • HAVINGはWHEREの置き換えではない。